package com.zhiwen.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiwen.domain.dto.QuestionVoteDTO;
import com.zhiwen.domain.entity.QuestionVote;

/**
 * 问题点赞服务接口
 */
public interface QuestionVoteService extends IService<QuestionVote> {

    /**
     * 问题点赞
     *
     * @param voteDTO 点赞数据
     * @return 是否成功
     */
    boolean voteQuestion(QuestionVoteDTO voteDTO);

    /**
     * 取消问题点赞
     *
     * @param questionId 问题ID
     * @return 是否成功
     */
    boolean cancelVote(Long questionId);

    /**
     * 检查用户对问题的点赞状态
     *
     * @param questionId 问题ID
     * @return 点赞类型(null-未点赞，1-赞成，2-反对)
     */
    Integer checkVoteStatus(Long questionId);
}
